<?php
/**
 * Pàgina que resoldrà la búsqueda d'incidències pendents i gestionarà
 * la seva ordenació segons la demanda de iniPendents.php
 *
 * @copyright 2009 - Equip de Desenvolupament de ASI 2
 * @link http://www.iescopernic.com
 * @version 1.0
 * @license GNU/GPL-http://www.gnu.org/copyleft/gpl.html
 * @package CreditSintesis
 * @subpackage sec
 * @author ASI 2
 */

/**
 * Arxiu que ens permet garantir seguretat a l'aplicació
 * @see seguretat_seccio.php
 */
include_once '../includes/seguretat_seccio.php';

/**
 * Arxiu que gestiona la connexió amb la base de dades
 * @see conector.php
 */
include_once '../includes/conector.php';

/**
 * Pàgina que conté la funcions per a formatar
 * cadenas abans d'introduir-l a ala base de dades.
 * @see formatejar.php
 */
include_once '../includes/formatejar.php';

//creem un objecte de la classe conector per a conectar a la bd
$conec = new conector();

//variable que ens diu els registres que volem mostrar per pàgina
$registresAmostrar=5;

//si rebem el numero de pàgina a mostrar
if(isset($_GET['pag'])){
    //calculem el número de gegistre per el que hem de començar a fer la consulta
    $registresAcomençar=($_GET['pag']-1)*$registresAmostrar;
    //la pagina actual passa a ser la que em rebut per get
    $pagAct=$_GET['pag'];
    //si no rebem cap pagina es que estem a la primera
}else{
    $registresAcomençar=0;
    $pagAct=1;
}


//aqui assignem per a quin camp ordenem els registres
if (empty($_GET['ordenar'])){
    $ordre = 'idincidencia';
}else{
    $ordre = $_GET['ordenar'];
}

//consulta que ens retorna els registres coincidents
$consulta = "SELECT * FROM incidencies WHERE estat NOT LIKE 'finalitzada' ORDER BY $ordre LIMIT $registresAcomençar, $registresAmostrar";

//llençem la consulta a la base de dades
$resultat = $conec ->consultar($consulta);

 //obtenim el número de registres totals de la consulta realitzada

 $consulta1 = "SELECT * FROM incidencies WHERE estat NOT LIKE 'finalitzada'";
 $numRegistres = $conec ->num_filas($consulta1);

?>

<div id="divContenido" name="divContenido">    
    <table aling="center" border="0" width="600" cellspacing="1" cellpadding="3" >
        <tbody>
            <?php            
            //si s'han trobat resultats mostrem es capçaleres sino mostrem missatge d'error
            if ($numRegistres > 0) {
                echo '<tr>
                     <th><a href="javascript:enviar(\'idincidencia\',1)">Codi</th>
                     <th><a href="javascript:enviar(\'iduser\',1)">Usuari </th>
                     <th><a href="javascript:enviar(\'tecnic\',1)">Tècnic</th>
                     <th><a href="javascript:enviar(\'prioritat\',1)">Prioritat</th>
                     <th><a href="javascript:enviar(\'estat\',1)">Estat Actual</th>
                     <th><a href="javascript:enviar(\'dataHora\',1)">Data Alta</th>
                     <th><a href="javascript:enviar(\'descripcio\',1)">Descripció</th>
                     </tr>
                    <tr>&nbsp</tr>';
            }else{
                echo '<div  id="error">';
                echo '<center>No s\'han trobat resultats . . .</center>';
                echo '</div>';
            }
    
            //variable que ens permet pintar els tr de color diferent
            $cont = 0;

            //mostrem els registres
            while($res = mysql_fetch_array($resultat)){


                //transformem el codi per el nom del usuari
                $consulta1 = "SELECT user FROM usuaris WHERE iduser =".$res['iduser'];
                $resultat1 = $conec ->consultar($consulta1);
                $res1 = mysql_fetch_array($resultat1);

                //transformem el codi per el nom del tècnic
                if ($res['tecnic'] == ""){
                    $res2['user'] = "";
                }else{
                $consulta2 = "SELECT user FROM usuaris WHERE iduser =".$res['tecnic'];
                $resultat2 = $conec ->consultar($consulta2);
                $res2 = mysql_fetch_array($resultat2);
                }
            ?>
            
                 <!-- depenent si es parell o no mostrem un color de fons o un altre -->
            <tr <?php if (($cont%2) == 0) echo 'id="gris"';else echo 'id="blanc"';?> onmouseover="this.style.cursor='pointer'" >
                
                <td align="center" onclick="subfinestra3('sec/detallPendents.php?id=<?php echo $res['idincidencia'];?>','Modificar Incidencies')"><?php echo $res['idincidencia']; ?></td>
                <td align="center" onclick="subfinestra3('sec/detallPendents.php?id=<?php echo $res['idincidencia'];?>','Modificar Incidencies')"><?php echo utf8_encode($res1['user']); ?></td>
                <td align="center" onclick="subfinestra3('sec/detallPendents.php?id=<?php echo $res['idincidencia'];?>','Modificar Incidencies')"><?php echo utf8_encode($res2['user']); ?></td>
                <td align="center" onclick="subfinestra3('sec/detallPendents.php?id=<?php echo $res['idincidencia'];?>','Modificar Incidencies')"><?php echo utf8_encode($res['prioritat']); ?></td>
                <td align="center" onclick="subfinestra3('sec/detallPendents.php?id=<?php echo $res['idincidencia'];?>','Modificar Incidencies')"><?php echo utf8_encode($res['estat']); ?></td>
                <td align="center" onclick="subfinestra3('sec/detallPendents.php?id=<?php echo $res['idincidencia'];?>','Modificar Incidencies')"><?php echo $res['dataHora']; ?></td>
                <td align="left"   onclick="subfinestra3('sec/detallPendents.php?id=<?php echo $res['idincidencia'];?>','Modificar Incidencies')"><?php echo utf8_encode(retallar($res['descripcio'], 27));?></td>
               
            </tr>
            
           <?php
           //augmentem en 1 el contador
           $cont ++;
           //tanquem el while
          }
          //tanquem la conexió
          $conec ->tancar();
         ?>
        </tbody>
    </table>
</div>
<!-- si no tenim resultats que mostrar no mostrem les pagines -->
    <?php if ($numRegistres > 5){

    echo '<table aling="center" border="0" width="600" cellspacing="1" cellpadding="3">';
    echo '<th>';

    //pagina anterior es la actual - 1
    $pagAnt=$pagAct-1;
    //pagina següent es la actual +1
    $pagSig=$pagAct+1;
    //ultima pagina es el numero de registres totals dividid el numero de registrea a mostrar
    $pagUlt=$numRegistres/$registresAmostrar;

    //procediment per a gestionar posibles decimals,es a dir i si la ultima pagina es la 4.5?
    //calculem el residu entre registres totals i registres a mostrar
    $resi=$numRegistres%$registresAmostrar;
    // si hi ha residu utilitzem la funcio floor per a que ens
    // retorni la part entera sense redondejar i li sumem 1
    // per aconseguir el valor de l'ultima pàgina
    if($resi>0){
        $pagUlt=floor($pagUlt)+1;
    }

    //codi del desplaçament entre pàgines

    //per anar a la primera pàgina em d'enviar un 1, si tenim pagines que mostrar
    if (($pagUlt > 1) && ($pagAct != 1))echo "<a onmouseover=\"this.style.cursor='pointer' \"onclick=\"enviar('$ordre','1')\"> << </a> ";

    //si la pagina actual es major que 1 mostrem codi per retroçedir
    if($pagAct>1) echo "<a onmouseover=\"this.style.cursor='pointer' \"onclick=\"enviar('$ordre','$pagAnt')\">&nbsp < &nbsp </a> ";

    //mostrem el número de pàgina en que estem de cuantes si hi han resultats
    if ($pagUlt > 1) echo "<strong>Pàgina ".$pagAct." de ".$pagUlt."</strong>";

    //si la pàgina actual es menor que l'última mostrem codi per anar a la següent
    if($pagAct<$pagUlt)  echo " <a onmouseover=\"this.style.cursor='pointer' \"onclick=\"enviar('$ordre','$pagSig')\">&nbsp > &nbsp</a>";

    //mostrem codi per anar a l'última pàgina, si tenim pagines que mostrar
    if ($pagUlt > $pagAct) echo "<a onmouseover=\"this.style.cursor='pointer' \"onclick=\"enviar('$ordre','$pagUlt')\"> >></a>";

echo '</th>';
echo '</table>';
}
